Remote crane bar code system

ABSTRACT

In general terms, the present invention provides a method of automatically scanning an inventory field to allow the selection of a desired item for retrieval. A camera is positioned in the crane trolley located above the field. The camera continuously performs a scan of the field displaying an image to the operator of the items being scanned. This real-time image allows the operator to distinguish between items scanned in the field. The operator can subsequently choose the desired item triggering the camera system to automatically capture desired information from the item which is in turn communicated to an inventory control system. The camera system mitigates the requirement of a second individual to communicate information between the field and the operator.

This application is a continuation-in-part of U.S. patent applicationSer. No. 11/202,188 filed on Aug. 12, 2005, which claims priority fromU.S. Patent Application No. 60/601,183 filed on Aug. 13, 2004.

FIELD OF THE INVENTION

The present invention relates to a method and apparatus for remotelyreading an identifier on an object.

BACKGROUND OF THE INVENTION

Items produced in a manufacturing environment will typically be storedin a warehouse for shipping at a later date. A shipping warehouse willtypically house a plurality of products, which are made by differingprocesses or have different characteristics. This collection ofwarehouse items may be referred to as the ‘field’. The field can besubstantially large and therefore may be organized into a set of definedlocations resembling a ‘grid’. The warehouse items are placed atappropriate locations within the grid and these locations are recorded,creating a mapping of the items for subsequent rearrangement orretrieval. A shipping order will typically comprise a combination ofdissimilar items from this field requiring this combination of items tobe located and collected to complete the shipping order. This shippingorder is sometimes referred to as a shipping manifest or lift ticket.Further to gathering items for a shipping order, it may be necessary orbeneficial to rearrange or move around the items in the field tooptimize floor space or to enable a more efficient arrangement of theitems.

When the items manufactured are of substantial dimension and weight, itis typically necessary to retrieve the items from the field using anoverhead crane or similar device capable of lifting and transportingitems of such dimension and weight. The use of an overhead cranerequires the operator of the crane to either be placed at a remotelocation relative to the field (in the cab of a crane for example) or tooperate the crane with a remote control device at field level. When theoperator is at a remote distance, the operator may be unable todistinguish between items in the field that are required for a givenshipping order. This situation is of particular concern where items areof similar shape but different characteristics, such as in the steelindustry where coils of stock that are produced with differingspecifications appear similar, especially when viewed from a distance.If the operator uses a remote control device to operate the crane,navigating the field while moving the crane, and reading and scanningthe items becomes quite cumbersome for one person. Furthermore, the useof one person at the field level to control the crane, identify theitems of interest and scan the item becomes cumbersome due 3 the needfor multiple devices to both control the crane and scan the item.

If the crane operator is remotely located relative to the field, asecond individual is required to identify the existence and position ofthe desired items at the field level, to scan the desired items andcommunicate this information to the operator. The communication betweenthe two individuals is required to identify the item of interest forrearrangement or shipping purposes.

The use of two individuals to gather items in a shipping order tends tobe both inefficient and labour intensive given the task to be completed.In the steel industry where the items in the field are of substantialsize and weight, the individual assigned to track the appropriate itemsat the field level would find the method of scanning to be not only timeconsuming but also dangerous. The inadvertent movement of large items onthe field poses a threat to the safety of the individual at the fieldlevel and the large area of the field does not lend itself to anefficient method for identifying the desired items in the shippingorder.

In the steel industry where the items in the field are large coils,typically the individual at the field level manually scans a barcodefound on a tag affixed to the coil. This introduces a possibility forhuman error. The human error can lead to the processing of incorrectcoils, which could possibly generate an incorrect shipment to thecustomer. Further to the time-related inefficiencies and inherent safetyrisk, the use of a field level individual requires additional floorspace for the above-mentioned navigation of the field. By eliminatingthe use of a floor operator, less floor space would be required. This isdue to a reduction in the required size of the lane ways betweenadjacent coils. Space is then only required to accommodate the jaws ofthe crane's picker. This requires an apparatus capable of viewing thefield from a distance.

To remotely view labels and barcodes, it has been known to use a cameramounted in a fixed position whereby movement of an item into thefield-of-view of the camera allows for remote viewing of a label. Thismethod however requires the position of the labels to be known and thecorrect item to have been picked by the crane in advance of the camerascan.

Another method of reading labels and barcodes remotely involves amoveable camera capable of tilting, panning and zooming to focus on adesired label or barcode. This method however, requires additionaloperations to be manually executed by the operator of the crane toidentify not only the item of interest but also to correctly centre andzoom in on the label for reading. These additional operator interactionsimpose an additional opportunity for human error.

It is therefore an object of the present invention to provide a methodand apparatus to obviate or mitigate the above disadvantages.

SUMMARY OF THE NVENTION

In general terms, one aspect of the present invention provides a methodfor remotely scanning objects including the steps of using an imagingsystem to display an image of the objects on an interface, receiving alocation input related to an identification tag which is attached to adesired object based on a location in the image, using the locationinput to orient the imaging system towards the identification tag,magnifying the identification tag, analysing the image using an array oftwo-dimensional sensors to determine the deviation of the tag within theimage with respect to a preferred position, aligning the tag byadjusting the orientation; and reading information identifyingcharacteristics of the desired object provided by the identificationtag.

In another aspect, the present invention provides a system for remotelyscanning objects comprising an imaging system positioned remotely fromthe objects and arranged to image the objects. The imaging system has anadjustable lens for magnifying the image. The system also comprises aninterface for displaying an image of the objects and is adapted forreceiving a location input for an identification tag attached to adesired object based on a location in the image. The system alsocomprises a processor connected to the imaging system and the interface.The processor uses the location input to orient the imaging systemtowards the tag, commands the adjustable lens to magnify the tag,analyses the image using an array of two dimensional sensors todetermine the deviation of the tag within the image with respect to apreferred position, aligns the tag by adjusting the orientation of theimaging system, and reads information identifying characteristics of thedesired object provided by the tag

In yet another aspect, the present invention provides a method foraligning a tag in an image, the tag being affixed to an object andhaving indicia thereon. The method has the steps of obtaining an imageof the object having at least a portion of the tag visible in the image;arranging an array of two-dimensional sensors on the image; identifyingmarkings in each of the sensors, the at least one marking indicative ofthe presence of a particular feature of the tag; computing an averageposition of the markings to determine a deviation of the averageposition from a preferred position; and aligning the tag in the imageaccording to the deviation.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the invention will now be described by way of exampleonly with reference to the appended drawings wherein:

FIG. 1 is a schematic representation of a remote crane barcode scanningsystem.

FIG. 2 is a schematic representation of a scanning camera.

FIG. 3 is a view of the operator control interface within a crane cab.

FIG. 4 is an enlarged view of the touchscreen transmitting an image ofthe field to the operator via the camera of FIG. 2.

FIG. 5 a shows an inventory tag.

FIG. 5 b is a representative schematic of the items identified by thecamera system during an image analysis procedure.

FIG. 6 is a schematic representation of the system.

FIG. 7 is a flow chart representing one embodiment of the field scanningprocess.

FIG. 8 is an alternative embodiment of the remote crane barcode scanningsystem of FIG. 1 utilising two cameras.

FIGS. 9 a-9 d are diagrams pictorially showing steps in a tag alignmentprocedure.

FIG. 10 is a flowchart illustrating the steps performed in the tagalignment procedure of FIG. 9.

FIG. 11 is a flowchart illustrating steps that continue from theflowchart of FIG. 10.

FIG. 12 is a diagram showing a misaligned barcode using the tagalignment procedure in FIG. 9.

FIG. 13 is a diagram showing yet another tag alignment procedure.

FIG. 14 is a screen shot of an embodiment of the operator interfaceshown in FIG. 3 incorporating diagnostic features.

FIG. 15 is a screen shot of the embodiment of FIG. 14 showing a laserrangefinder failure.

FIG. 16 is a screen shot of the embodiment of FIG. 14 showing a cameraconnection failure.

FIG. 17 is a screen shot of a help menu.

FIG. 18 is a screen shot of a graphical help manual.

FIG. 19 is a perspective view showing an arrangement for the laserrangefinder system of FIG. 1.

FIG. 20 is a perspective view of the underside of the trolley of FIG. 1incorporating an illumination system.

FIG. 21 is a screen shot of an advanced options menu.

DETAILED DESCRIPTION OF THE INVENTION

Referring therefore to FIG. 1, an overhead crane system 10 is positionedabove a field of inventory 20, the inventory in this embodiment beingcoils 22 of steel varying in specification. The coils 22 are initiallyplaced in the field 20 and the respective positions of the coils 22 inthe field 20 recorded using a range finder system 13 or other means.Each position may then be correlated to its respective coil 22 using thesystem 10 or other suitable methods. The correlation of position to coil22 enables an operator of the system 10 to at a later time target aparticular area of the field in order to locate and scan the coil 22 todetermine if it remains at its recorded position.

The overhead crane system 10 includes a trolley 12 mounted upon a bridge26 and has a communication connection to an operator cab 18, preferablyover a festoon cable to accommodate movement of the trolley 12 relativeto the cab 18. The cab 18 is situated in a fixed position at one end ofthe bridge 26. An inventory control system 24 includes locationcoordinates and inventory information, and also has a communicationconnection with the operator cab 18. The trolley 12 includes a set ofmotors 28 to facilitate translation of the trolley 12 along the bridge26. Typically the bridge 26 is mounted on rails 25 transverse to thebridge 26 allowing the bridge 26 to translate fore and aft along therails 25.

Translation of the bridge 26 and the trolley 12 in the directionsindicated allows the trolley 12 to access objects located anywhere inthe field 20. The trolley 12 furthermore includes a picker 16 forvertically hoisting coils 22 from the field 20, a camera system 14, andthe range finder system 13 having separate range finders for locatingthe trolley's position along each axis of the field 20.

In one arrangement shown in FIG. 19, a first range finder 13 a ismounted on the bridge 26 and is aligned in the y-direction with a firstreflection plate 301. The reflection plate 301 is mounted on a wall 300parallel to the length of the bridge 26. A second range finder 13 b ismounted at one end of the bridge 26 and opposite the trolley 12 suchthat it will remain fixed in the y-direction irrespective of theposition of the bridge 26. The range finder 13 b is aligned in thex-direction with a second reflection plate 306 that is mounted to thetrolley 12 and that is parallel to a wall 304 which is in turnperpendicular to the wall 300. It will be appreciated that anyarrangement can be used that is capable of determining both x and ycoordinates.

The range finder 13 a transmits a laser beam 302 that reflects off ofthe reflection plate 301 and returns to the range finder 13 a in orderto measure the current x-coordinate for the bridge 26 and trolley 12.The second range finder 13 b transmits a second laser beam 306 thatreflects off of the reflection plate 305 and returns to the range finder13 b in order to measure the current y-coordinate for the trolley 12.The range finders 13 a, 13 b are connected to the system 10 and providean ongoing measurement of the position of the trolley 12 in the field 20for correlating a particular coil 22 to a particular location asexplained in further detail below.

The camera system 14 can be seen in greater detail when referring toFIG. 2. The camera system's components are housed within a casing 36 andthis casing 36 is mounted to the underside of the trolley 12. A zoomlens 32 of a camera 34 protrudes beyond the lower surface of the casing36, which is partially open and covered by a transparent acrylicenclosure 30. The camera 34 is preferably a “smart” camera, which is acamera having a microprocessor capable of processing image data. Thisfunctionality enables the camera 34 to process information related tothe coils 22, that are acquired in an image.

The processing may also be done remotely from the camera 34 in aseparate processor. The acrylic enclosure 30 allows movement of the zoomlens 32 within its volume and is transparent, allowing the lens 32 tocapture images. The camera 34 is controlled by a pan/tilt mechanism 40.The pan/tilt mechanism 40 can orient the camera 34 using various pan andtilt operations in order to point the camera 34 towards a desired areaof the field 20. A motor 38 is incorporated within the pan/tiltmechanism 40 and controls its movements. The motor 38 is controlled byan electronic controller 33 which has a communication connection to thesmart camera 34 or other system control computer (not shown).

Referring now to FIG. 20, the lens 32 of the camera system 32 has afield of view 310 that when properly focussed can image a barcode 60 ona coil 22. In a shipping or storage facility, often regions of thefacility have poor or uncontrolled ambient light and in some caseshaving no ambient light is preferable. In order to most effectivelycapture an image of the barcode 60, an adequate amount of ambient lightshould be provided at least in the region of the camera lens' field ofview 310. As seen in FIG. 20, a localized illuminated region 312 isprovided by an illumination system 308 mounted to the underside of thetrolley 12, whereby, as the camera system 14 moves, so does theillumination system 308. It will be appreciated that the light can bearranged in any suitable configuration with respect to the camera system32 and should not be limited to only the configuration shown in FIG. 20.

FIG. 20 shows the illumination system in isolation. The system 308comprises four linear light arrays. Preferably, a pair of red LED linearlights 314, 315 sandwich a pair of infrared LED linear lights 316, 317.The red LEDs 314, 315 are arranged above the picker 16 and aimed at theunderlying coil 22 to illuminate that coil 22 and the surrounding floorof the field 20 at all times. The infrared LED lights 316, 317 arepreferably synchronized with the camera's exposure time during readingsand are normally off when not scanning to prolong their lifespan.Therefore, it can be seen that even in low or non-existent ambient lightconditions, the region directly below the camera system 14 is providedwith sufficient illumination to enable a useful image to be captured. Itwill be appreciated that any colour of LED can be used and should not belimited to red. Suitable linear lights are those produced by SpectrumElumination™.

The interface located within the operator cab 18 is shown in FIG. 3. Thecab 18 contains a computer interface 50 which includes a touchscreen 54.A control console 52 allows the operator to control manually, themovements of the trolley 12.

To obtain maximum control and flexibility, an industrial PC can be usedfor the computer interface 50 that runs a visual basic (VB) API 400 (seeFIG. 14). The industrial PC integrates, via serial and Ethernet ports,all the communication elements and displays the camera feeds. A typicalindustrial PC has five serial ports and can be made responsible for thetouch screen input, the x and y laser range finder inputs, the barcodeoutput, and the location output. The Ethernet port can be connected tothe local camera network for the camera system 14 that is used todisplay the camera feeds while sending and receiving information fromthe cameras. The VB interface can continuously calculate and update thelocation and can output the barcode and location information to theinventory system 24 as described in greater detail below. The VBinterface can also be used to automatically control the camera zoom andfocus algorithms to accommodate changing floor levels. The flexibilitythat is inherent in using a platform such as VB advanced lens controlcan be implemented to control the iris, focus and zoom levels toaccommodate abnormally sized barcode tags and for calibrating a newsystem 10.

Making reference now to FIG. 4, the touchscreen 54 displays the imagesacquired by the camera system 14. These images show objects in the field20 and in this particular example are coils of steel 22. The coils 22are of differing specifications, and information pertaining to the coil22 is stored on a tag 60. The tags 60 are intended to be affixed to theupward facing surfaces of the coils 22 typically in an unspecifiedmanner and therefore do not appear at consistent locations on the upwardfacing surfaces of the coils 22 or in consistent orientations thereon.The information found on the tag 60 is unreadable from the distance thatthe operator is located and therefore must be magnified by the camerasystem 14. A tag 60 is shown in FIG. 5 a. The tag 60 includes a barcode64, a numerical code 66 and a set of alignment markers 62. An alignmentmarker 62 is located in the proximity of each of the four corners of thebarcode 64. One alignment marker 62 a is dissimilar to the otheralignment markers 62 b, 62 c, 62 d. The dissimilar alignment marker 62 ais used by the camera system 14 to determine the orientation of the tag60 in the image. The orientation of the tag 60 allows the camera system14 to choose the appropriate direction to perform the barcode scan.

In FIG. 5 a, the dissimilar marker 62 a is located in the top-leftportion of the image with respect to the other markers 62 b, 62 c, 62 d.The dissimilar marker 62 a includes a triangular notch which pointstowards the centre of the barcode 64. The remaining three markers aretriangular in shape and are rotated 90° with respect to each other suchthat they each point towards the centre of the barcode 64. The alignmentmarkers 62 are located at substantially equal distances from the centreof the barcode 64. These distances are known proportions of the tag'ssize (for instance a proportion of the width). These proportions and thetag size itself are programmed into the camera system 14. The camerasystem 14 can use the width of the tag 60 seen in the image to establishscale. Distances can be measured from the alignment markers 62 based onthe established scale, the known proportions and the resolution of thecamera system 14. The barcode 64 and the numerical code 66 containsidentification information pertaining to the coil 22 to which the tag 60is affixed.

The communication connections are schematically shown in FIG. 6. Theelectronic controller 33 includes a zoom controller 82 operating thezoom lens 32 and a pan/tilt controller 84 operating the pan/tiltmechanism 40. The controller 82 commands the motors 38 (not shown)facilitating the movement of the zoom lens 32 (or 32 b in a two camerasystem—explained later). The controller 84 commands the motors 38facilitating the movement of the pan/tilt mechanism 40. In thisparticular embodiment, the inventory control system 24 is connected tothe operator interface 50 via a wireless Ethernet link 80. It will beappreciated that any of the communication connections described hereinmay be hard wired or wireless. It will also be appreciated that thetouchscreen 50 and operator interface may alternatively be located awayfrom the crane at a remote location, and operated via the communicationlink 80. In such an arrangement, control of the crane and the picker 16can be performed from any location.

Referring to FIG. 7, an automatic scanning process 100 involves acontinuous scan of the coil field 102. Referring also to FIG. 1, thecamera system 14 is mounted on the underside of the trolley 12 andtherefore scans the field 20 below as the operator navigates the trolley12. Images captured are displayed to the operator 104 as shown in FIG.4. Coils 22 are observed during this scanning process 100 and theoperator must decide whether the coil 22 shown is of interest forreading 106. If the coil 22 is not of interest to the operator, theoperator will continue to monitor the image 104 until a coil 22 doesappear that is of interest for reading. When a coil 22 appears that isof interest, the operator first indicates whether the coil 22 issituated at a relative far position such as on the floor or at arelative near position such as being mounted in a secured and elevatedposition on a truck bed. This is done by selecting a “Near” setting or“Far” setting on the touchscreen 54. The settings represent the nominalmagnifications required by the camera system 14 to be able to read a tag60 at the corresponding distance. It will be appreciated that there maybe any number of magnification levels that can be chosen and should notbe limited to only “Near” and “Far” settings. The operator then selectsthe coil 108 by touching the image of the particular coil 22 at theposition which its tag 60 appears on the touchscreen 54.

It will be appreciated that the camera system 14 may also use the rangefinder system 13 to determine where the trolley 12 is in the buildingand whether it is over a floor area or a loading bay (truck mountedcoils) to automatically adjust the magnification and focus toappropriate settings without operator input.

In such an embodiment, the arrangement shown in FIG. 19 is preferablyused along with a pre-stored lookup table that includes informationpertaining to the floor layout of the field 20. The two range finders 13a, 13 b obtain the x and y coordinates of the shipping facility inreal-time. The lookup table is used to determine if the (x, y) positionis over the floor or a truck bed (as one example) and using thisinformation, the system determines the appropriate zoom and focus forthe particular coil 22 and instructs the motorized lens 32 accordingly.Similarly, when a coil 22 is first placed in the field 20, itsinformation can be correlated to the real time position to assign afloor grid location to that coil. Later, when the coil 22 is to beretrieved, an identifier for the coil 22 (e.g. on lift ticket) can beused to determine the location for the coil 22 and the system 10 canautomatically position the camera in the vicinity of the coil ofinterest by tracking the real time coordinates.

At this point, the camera system 14 begins an identification process109. To begin, the camera system 14 is given a set of co-ordinates fromthe touchscreen 54 (or rangefinder system 13) representing the positionselected by the operator (or automatically detected). These co-ordinatesare measured relative to a datum wherein the scale of the image is knownbased on the wide view magnification used by the camera system 14 andthe data provided by the range finder system 13. The datum representsthe centre of the field-of-view of the camera system 14. The pan/tiltcontroller 84 then moves the camera system 14 aligning the datum withthe given co-ordinates 110 which places the tag 60 substantially withinthe centre of the field-of-view of the camera system 14. The camerasystem 14 also uses the data from the range finder system 13 to map thetrolley's position within the field 20 to the given co-ordinates. Thisprovides the inventory control system 24 with a floor grid location tobe associated with the tag's information.

This first movement 110 by the pan/tilt mechanism 40 provides a coarseadjustment for centring the tag 60. Following this pan/tilt operation110, the camera system 14 commands the zoom controller 82 to perform azoom operation 112, providing an enlarged image of the tag 60. The zoomcontroller 82 has two predetermined magnifications, one for the “Near”option and one for the “Far” option. Since the tags 60 are presumablyaffixed to the coils 22 on the upward facing surface, tags 60 withsimilar designation (specifically “Near” or “Far”) will be at asubstantially similar distance from the camera system 14. If theoperator had selected “Far”, the zoom controller 82 magnifies the imageto its “Far” setting. If the operator had selected “Near”, the zoomcontroller 82 magnifies the image to its “Near” setting which requiresless magnification than the “Far” setting since the coils 22 arepositioned closer to the camera system 14. Due to curvature of theupward facing surface of the coils 22, tags 60 of similar designationmay be affixed at slightly varying distances. The zoom controller 82performs minor focusing at this point if necessary to provide adequatesharpness of the image.

It will be appreciated that the camera system 14 may also use a depthmeasurement device such as an ultrasonic range finder to determine thedistance between the tag 60 and the camera system 14. This would allowthe zoom controller 82 to choose specific magnifications for each tag60. This may be necessary in situations where the dimensions of theobjects being selected vary substantially.

Following the zoom operation 112, the camera system 14 performs analignment adjustment operation 114. Referring now to FIG. 5 b, thecamera system 14 analyses the image and identifies the location andorientation of each of the alignment markers 62 on the tag 60 using anobject-finding routine built into the software used by the imagingsystem, e.g. smart camera software, and previously programmed toidentify markers 62 having a particular size and shape.

The camera system 14 determines the position of the dissimilar marker 62a relative to the other markers and this position dictates the relativeorientation of the tag 60 and subsequently the barcode scan direction.If the dissimilar marker 62 a is the upper-leftmost of the markers 62(as shown in FIGS. 5 a and 5 b) the camera system 14 determines that aleft-right horizontal scan is required. If the dissimilar marker 62 a isthe upper-rightmost of the markers 62 the camera system 14 determinesthat a top-bottom vertical scan is required. If the dissimilar marker 62a is the lower-leftmost of the markers 62 the camera system 14determines that a bottom-top vertical scan is required. If thedissimilar marker 62 a is the lower-rightmost of the markers 62 thecamera system 14 determines that a right-left horizontal scan isrequired.

Using the locations of the markers 62, the camera system 14 thenapproximates the centre of the barcode 64. Firstly, since the relativeorientation of the tag 60 has been determined, the camera system canmeasure the width of the tag 60 along the appropriate direction in theimage 70. Furthermore, since the actual width of the tag 60 and thecamera system's resolution is known, the camera system 14 can correlatepixel width in the image to the actual width on the tag 60. Each markeris a particular distance from the centre of the barcode 64 and is aproportion of the tag's width. The distance is measured along a line inthe direction that the marker 62 b is pointing and is typicallyperpendicular to the outermost edge of the marker 62 b relative to thebarcode 64. Based on the proportion of the tag's width, the actualdistance on the tag 60 is converted to a number of pixels in the image.This pixel length is then converted to a set of pixel co-ordinatesrelative to the marker 62 b. Using these relative pixel co-ordinates,the centre of the barcode 64 is approximated and a mark 74 is recordedby the camera system 14. This process is repeated for the other threealignment marks 62 a,c,d and the average position 72 of the four marks74 is calculated and its position is recorded by the camera system 14.These markings are shown in FIG. 5 b.

The camera system 14 uses the position of the average centre mark 72 todetermine whether the centre mark 72 lies within a window 76 ofacceptable positions surrounding the centre of the image 70. If theaverage centre mark 72 is within the acceptable window 76, the barcode64 can be read. If the average centre mark 72 is not within this window76, the pan/tilt controller 84 commands the pan/tilt mechanism 40 toadjust the camera system 14 thereby placing the average centre mark 72within the acceptable window 76 of the analysed image 70. This alignmentof the average centre mark 72 ensures the entire barcode 64 is visiblein the image 70 and therefore can be properly scanned.

With the tag 60 magnified 112, properly aligned (per step 114), and itsorientation known, a barcode string is generated by the camera system 14by scanning the bar code 116. The direction of the scan is based on thedetermined orientation of the tag 60. This barcode string is sent to theoperator interface 50 for comparison with the lift ticket 118. If theinformation acquired does not match an item on the lift ticket, the coil22 is rejected and the system 100 returns to the field level image forthe operator to make another selection. If the barcode 64 does match anitem on the lift ticket, the camera system 14 returns to a wider view toallow the coil 22 to be grabbed and lifted by the operator 119 using thecrane's picker 16. The automatic scanning process 100 is reinitialised120 once a coil has been lifted 119 and resumes scanning the coil field102 until the next operator selection. The system 10 may then interfacewith the inventory control system 24 to update the stock of coils 22 andprocess a shipping ticket for delivery of an order of coils 22.

Therefore, the system 10 enables the identification, scanning andretrieval of objects in a field of inventory from a remote locationrequiring only a single input from an operator. The operator mayremotely scan a collection of the objects and select an object ofinterest based on a predetermined location for that object. This can bedone through an input such as touching the image on a touchscreen toindicate the location of an identifier on the object. The imaging system14 may then automatically magnify the identifier based on the input, andautomatically perform an alignment procedure to orient the identifieraccording to a desired orientation. The system 14 then automaticallyreads the identifier, e.g. by scanning a barcode 64, and usesinformation provided by the identifier to confirm the location of theobject for processing shipping orders, and update an inventory system 24accordingly. Only a single operator input using a touch or point of amouse is needed to execute the above procedure. This effectivelyreplaces a manual pan/tilt/focus/zoom operation with a single initialinput.

In a further embodiment of the present invention, the camera system 14utilises two smart cameras 32 a, 32 b as shown in FIG. 8. The pair ofcameras 32 a, 32 b are mounted together on the pan/tilt mechanism 40similar to the apparatus shown in FIG. 2. The first camera 32 a is at afixed magnification and provides a constant overall image of the coils22 as they are being scanned. The second camera 32 b is equipped with amotorised zoom lens similar to the camera lens 32 in the previousembodiment. In this configuration, the second camera 32 b maintains amagnification close to the level at which a tag 60 can be read andrequires only minor magnification adjustments once the pan/tiltmechanism 40 aligns the second camera 32 b with the selected tag 60.

The use of two smart cameras 32 a, 32 b eliminates the delay time causedby the long zoom stroke being required to increase the magnificationfrom a wide view of the field 20 to a zoomed view of a barcode 64. Whilethe camera system 14 scans the field 20, the touchscreen 54 displays animage of the field from the fixed camera 32 a. When the operator selectsa tag 60 on the touchscreen 54, the touchscreen 54 then displays animage from the second camera 32 b while it centres the tag 60. Since thetags 60 may be affixed at varying distances, the second camera 32 b willmake necessary minor adjustments to achieve the desired magnificationwhile centering takes place. Both cameras 32 a, 32 b are mounted on thepan/tilt mechanism 40, and thus move together to maintain a constantrelationship of the location of the tag view within the field of view ofthe fixed camera 32 b.

During operation, one camera (e.g. 32 a) is designated as a fieldcamera, and the other camera (i.e. 32 b) is used at the tag camera forreading barcodes. The field camera 32 a has a fixed focal length,aperture and focus settings. The image size, and depth of field are setso that all coils 22, no matter what height, are in focus. The overviewimage is provided to the operator, so that they can select the location(i.e. barcode tag) to enable the tag camera 32 b to locate the tag 60for reading the barcode 64. The field camera 32 a monitors the output ofthe user interface touchscreen 50, looking for tag identification“touches” or other suitable commands to indicate such identification.

Once the barcode 64 has been identified by the operator, the camera 32 aattempts to identify the barcode 64 and locate its center, to therebyincrease the accuracy of the pointing instruction to the pan/tiltmechanism 40. If the attempt fails, the pan/tilt command defaults to theexact position that the operator touched. Once the pointing operation iscomplete, the field camera 32 a flags the tag camera 32 b to begin thetag reading process.

The tag camera 32 b has a motorized zoom lens, which is capable ofadjusting image size, aperture (brightness and depth of field), andfocus (object height). Image size is set by the operator, who mayspecify whether the coil is on the floor or on a truck bed as explainedabove. The aperture is held constant, and focus may be scanned tooptimize image sharpness for the barcode read.

The tag image may be provided to the operator for manual centering usingthe touchscreen 50, or to be able to read the tag number in case thebarcode is unreadable. The tag camera 32 b operates to execute theidentification process 109 described above. It will be appreciated thatthe camera 32 b may process the image with an internal processor or maysend images to an off-camera processor for processing.

It will be appreciated that the second embodiment described hereinincludes all of the features of the previous embodiment with anincreased zoom speed imparted by use of a pair of smart cameras 32 a, 32b shown in FIG. 8, and described above.

The identification process 109, particularly the alignment step 114described above is most accurate when reading tags 60 that are affixedto objects have a substantially planar upwardly facing surface, or whenthe tags 60 are more or less ensured to be affixed such that theiralignment is substantially parallel to the floor 20. When tags 60 areaffixed to rolls of steel 22, the inherent curvature of the upwardfacing surface of the roll often places the tag 60 at a difficult anglefor viewing the alignment markers 62 described above, e.g. when the tagsare positioned on a sloping surface of the roll 22.

An alternative procedure for aligning a tag 160 is shown in FIGS. 9 a-9d and 10-11, which is most suitable for centering tags 160 that arelikely to be affixed to an object having a sloping surface. In thisembodiment, like elements are given like numerals with the prefix “1”.

An image 154 may be obtained according to steps 102-112 shown in FIG. 7,using either the one-camera or two-camera system. The followingdescription is directed towards a two-camera system, but should holdtrue for a single camera system with different zoom levels, sincedifferent zoom levels are inherently at different resolutions. In atwo-camera system, when the field camera 32 a sends instructions to thepan/tilt mechanism 40 to center the tag camera 32 b on a barcode, it iscommon for the tag 160 to be off-center in the tag camera's field ofview. This occurs because the resolution of the tag camera 32 b istypically much greater than that of the field camera 32 a, and thus, asingle pixel shift (horizontal or vertical) command to the pan/tiltmechanism 40 from the field camera 32 a, translates to a several pixelshift in the field of view of the tag camera 32 b.

As shown in FIGS. 9 a-9 c, a portion of the barcode 64 may be cut-off inthe image 154, as well as some of the alignment markers 62. Thealternative procedure shown in FIGS. 9 a-9 d enable the tag camera 32 bto be repositioned in order to orient the barcode 64 such that it isvisible for subsequent scanning (i.e. in a desired orientation).Preferably, the centering operation is executed for each scan,regardless of the accuracy of the coarse adjustment caused by the“touch” of the operator. When a tag 160 is accurately centered after thecoarse adjustment, only a minor additional time overhead is required,however, when the tag 160 is substantially off-center, the procedure cansave several seconds from the read operation when compared to having theoperator initiate a manual re-centering.

The alternative procedure for aligning tags 160 uses a series of virtualsensors implemented in a software routine to conduct scans along definedpaths in the image 154 to identify or “sense” segments. Segments areregions of similar intensity, differentiated from other regions by anintensity gradient, which is preferably user selectable. Each scaneffectively causes a “soft” sensor to interrogate the image and mark oridentify segments that it intersects. Preferably, three concentricsensors are used. In the embodiment shown in FIG. 9 a, three sensorseach scan an oval path (inner 202, mid 204, outer 206) to defineconcentric zones arranged from the center of the image 200 out to theedges of the image field. A marker 208 is placed on the image withineach segment identified by a sensor. The number of these points in theimage is indicative of distribution of segments in the image.

A well centered tag 160 should produce an equal distribution ofsegments, and thus markers 208, about the center of the image 154, suchas that shown in FIG. 9 d. In such a case, the segment positions wouldthen cancel each other out, to produce an average position of thesegments, near center 200. A tag 160 that is towards one side of theimage field, e.g. FIGS. 9 a-9 c, will cause an imbalance in the numberof segments on that side, resulting in the average segment positionbeing shifted towards that half of the image 154. In FIGS. 9 a-9 c, thebarcode 164 is located towards the bottom right portion of the image154, and reports a large number of small segments in that area. Smallsegments are segments that are of a particular size, measured in pixels,e.g. <10 pixels, and are likely to indicate the presence of a barcodebar (white or black). An average 215 of the position of these smallsegments, measured from the center 200 computes a vector 214 (see FIG. 9b).

Referring to FIG. 9 c, a horizontal sensor 210 and vertical sensor 212can also be used to provide greater accuracy. These sensors scan alongthe image at the average position 215 as shown in FIG. 9 c, and are usedto adjust the average position 215, to determine a second averageposition 217, that better represents the centre of the barcode 164. Asecond vector 216 is then produced that more accurately reflects theoffset of the barcode 164. For a horizontal barcode, e.g. FIGS. 9 a-9 c,the oval segmentation sensors 202-206 would provide the vertical offset,and the horizontal sensor 210, the horizontal offset. Similarly, for avertical barcode (not shown), the oval sensors would provide thehorizontal offset, and the vertical sensor 212, the vertical offset.

The following describes the alternative procedure for aligning the tag160, in greater detail, making reference to FIGS. 9 a-9 c, 10 and 11. Inthe image 154 shown in FIG. 9 a, the three oval sensors 202-206 areconfigured to mark segments that are at least 5 pixels in size, which isthe typical width of the smallest barcode bar. It will be appreciatedthat this procedure may be used for aligning other indicia such as analpha-numeric string, wherein the threshold of 5 pixels may be adjustedto recognize, e.g., the smallest possible character width.

An edge contrast may be used to identify barcode segments, and isdetermined through experimentation during an initial calibration. Asuitable range is 7-15%, which is high enough to ignore minor noisysegments, but low enough to pick as many valid barcode segments at arelatively poor focus as possible.

As shown in FIG. 10, when the alignment procedure is executed, a scriptexamines each segmentation sensor 202-206 in turn, and determines thenumber of segments identified by each sensor. First, the sensor ofinterest is chosen, e.g. starting with sensor 202, and the number ofsegments is then determined and compared to a threshold, e.g. 10. If thenumber of segments is less than 10, chances are that there is no barcodeintersecting the sensor 202, just background noise. In FIG. 9 a, it canbe seen that sensor 202 has only 1 segment, and would therefore beignored in calculating the offset of the tag 160. However, the nextsensor, e.g. 204, clearly has more than 10 segments, and would thereforebe used to calculate the average segment position 215 (shown in FIG. 9b).

Since segments on a barcode 164 should not, ideally, be larger than acertain threshold, e.g. approximately 10 pixels, those that are largerthan the threshold are ignored, eliminating stray segments, backgroundsegments etc. This ignores the curvature of the path in which thesensors may perform their scan. An oval path may report a larger segmentwidth since the path in which it travels may not traverse the segmentalong the shortest path. This would result in a measured segment widththat is larger than that of the segment's true size. Segments can alsobe identified as larger than they truly are, if adjacent barcode barsare missed due to poor focus etc. The threshold is chosen to accommodateoperational variations.

Turning to FIGS. 9 a and 10 specifically, since sensor 202 has beenignored, sensor 204 is next analysed. There are greater than 10 segmentsaccording to the image 154 in FIG. 9 a, therefore, the first segment isselected, and its size determined. If the segment selected is smallerthan the threshold, i.e., 10 pixels or less, its coordinates are savedto include in the average position. This is repeated until each segmenthas been analysed. As long as at least one of the segments has not beendetermined as “bad”, i.e., above threshold, an average horizontal andvertical position are determined based on all coordinates saved duringthe analysis.

The above process is repeated for each sensor, which in the exampleshown in FIG. 9 a would involve one more iteration to evaluate sensor206. If it was determined that all sensors were ignored, the aggregateaverage position is set to the center 200. If at least one of thesegments has not been ignored, an aggregate average position 215 usingall included sensors (these are shown in isolation in FIG. 9 b), and allincluded segment positions is found. This calculation produces vector214 shown in FIG. 9 b.

Once all sensors have been analysed, the horizontal and verticalsegmentation sensors may be used, as shown in isolation in FIG. 9 c. Itwill be appreciated that using the horizontal 210 and vertical 212sensors may be an optional procedure, however, the use thereof doesprovide a more accurate determination of the center of the barcode 164.

The steps in using the horizontal 210 and vertical sensors 212 is shownin FIG. 11, making reference to FIG. 9 c. The horizontal sensor 210 isplaced along the image 154 at the average vertical position (i.e. Ycoordinate of 215) determined according to FIG. 10. Similarly, thevertical sensor 212 is placed along the image 154 at the averagehorizontal position (i.e. X coordinate of 215). A script will determinewhich line sensor (210 or 212) has a greater number of segments, todecide whether the barcode 164 is oriented vertically or horizontally.It is clear from FIG. 9 c that the horizontal sensor 210 has a greaternumber of segments, and the barcode 164 is clearly oriented in ahorizontal fashion.

In this example, since the horizontal sensor 210 has a greater number ofsegments, the process continues on the right hand path shown in FIG. 11.Once the proper sensor has been chosen, the number of segmentsidentified by that sensor is determined, and if there are fewer segmentsthan a particular threshold, the process is bypassed. In FIG. 11, thatthreshold is three (3) segments. If the horizontal sensor 210 hasidentified three or more segments, which in FIG. 9 c is true, a loopcommences that measures the size of each segment, and if the segment issmaller than a threshold, e.g., 15 pixels, then the coordinates of thatsegment are to be included in the second average position 217. Similarto the oval sensors, this process is repeated for each segment until allhave been analysed.

If all segments were bad, the average X position is set to the Xcoordinate of center 200, and if not, an average X position is computedfor all included segments. Differential X and Y measurements are thencalculated by subtracting the X coordinate of center 200 from theaverage X position and the Y coordinate of the center 200 from theaverage Y position. In this example, the average Y value remains the onecalculated by the oval sensors. The differential measurements are thencompared to respective thresholds, and if the differential measurementsare not above those thresholds then the barcode 164 is within thesuitable limits and a move is not required. If however at least one ofthe X or Y differential measurements are greater than its respectivethreshold, a second vector 216 extending from center 200 to the positiondictated by the X differential and Y differential measurements, i.e.217, is computed. This vector 216 provides a better estimate of thecenter of the barcode in the horizontal direction, as shown in FIG. 9 c.

It will be appreciated that the steps taken for measuring a verticalbarcode are similar to those that have been described above, andtherefore, need not be reiterated.

As long as at least one of the differential measurements is greater thanits respective threshold, a pan/tilt operation will be performed by thepan/tilt mechanism 40, which aligns the tag 160 within the image asshown in FIG. 9 d. At this point, the imaging system 14 will analyse theimage and determine if further adjustment is needed, or if a particularscan direction is needed. For example, the tag 160 is oriented“up-side-down”, and thus the barcode scan operation would need to takethis into account. The imaging system 14 may then determine theup-down/left-right orientation and scan accordingly.

To achieve the most accurate results: a reasonable focus should be usedso that the maximum number of barcode segments may be encountered; areasonably consistent background is preferred, which is difficult tocontrol, however should be considered; and if possible, having no othertags within the field of view of the cameras 32 a, 32 b is alsopreferred, to minimize confusion with the background.

It will be appreciated that the above alternative alignment procedurecan be used in place of the procedure shown in FIGS. 5 a and 5 b, andthe choice of which procedure to use, is dependent on the application.For instance, in an application where the objects being scanned arerectangular, e.g., shipping containers, either alignment procedure issuitable. On the other hand, in applications where the objects arecurved, e.g., rolls of steel, the alternative alignment procedure ismore appropriate.

The tag alignment procedure shown in FIG. 9 can be prone tomis-alignment in less than ideal conditions, e.g. where the tag 60 isout of focus. In many practical applications, the system performs a tagcentering operation prior to focussing the tag in order to reduceinspection time. If the system first performs the focus operation, it islikely in many instances that there is not a great deal of the barcode60 in the image and thus will have to perform a tag centering procedureand then re-focus the tag. Ideally, the tag centering procedure shouldonly be performed once since, every time the procedure executes, theinspection time increases and the inherent time delays due to mechanicalmovements are also increased.

In cases such as that shown in FIG. 12, poor focus and/or poor initialalignment can result in too few segments being detected. The resultantsegmentation shown in FIG. 12 would determine that the tag 260 is almostperfectly centred and no movements are necessary when in fact acorrection is needed to align the tag 260. Such a false positive can beattributed to the sensitivity of the line sensors and the poor imagefocus (poor focus not shown in FIG. 12 in the interest of clarity). Inorder to overcome the potential shortcomings of the use of the procedureshown in FIG. 9, another embodiment, shown in FIG. 13 can alternativelybe used.

Referring now to FIG. 13, an array of square area segments 262 areevenly arranged throughout the image. Area sensors 262 are typicallymore robust than line sensors since, by definition, the sensors 262detect within an area (i.e. 2-D) as opposed to only the pixels that areincluded in a 1-D line. Line sensors, as discussed above, detect singlewhite-to-black-to-white transitions and thus depend a single 1-Dtransition. The area sensors 262 are capable of correlating 2-Dboundaries in its respective area.

Each sensor 262 looks for 2-D segments of the same geometric property asa typical barcode strip having the same magnification (based on datathat can be pre-stored). Each of the sensors 262 is associate with arespective offset value measured with respect to the origin (0, 0) ofthe image (e.g. centre). For example, the sensor 262 in row 1, column 1(i.e. upper left corner) has an x-offset of −240 and a y-offset of −160,while the sensor 262 in row 2, column 3 has an x-offset of +80 and ay-offset of zero (0). If the number of 2-D segments detected in aparticular area exceeds a predetermined threshold (e.g. 5), then itspredetermined offsets are added to a total offset, which includes anaverage of all applicable offsets. The threshold is used to excludesensors 262 such as row 2, column 2 whose segments do not contribute toidentifying the location of the barcode 64 but may have detected otherfeatures of the tag 60.

The predetermined offsets for all applicable sensors 262 are addedtogether and averaged to determine an approximate total (x, y) offset.In the example shown in FIG. 13, sensors (1, 3), (1, 4), (2, 3) and (2,4) contribute to the offset calculation and the approximate offset isfound to be (160, −80), i.e. move the tag left by 160 pixels and down by80 pixels.

Preferably, in order to fine tune the offset calculation, a horizontalline sensor 266 and a vertical line sensor 264 are placed at theapproximate offset (e.g. 160, −80) and the segments detected along themare incorporated into the offset calculation. The line sensors 264, 266are used to accommodate horizontally and vertically placed barcode tags60. The one that finds the most segments along its length (preferablysubject to a predetermined threshold), determines the orientation of thetag (e.g. horizontal in FIG. 13) and contributes to the final offsetcalculation. The average of all the segments found by the line sensors264, 266 adds a fine adjustment to the approximate offset resulting inthe final offset. In the example shown in FIG. 13, the final offset is(122, −106).

To create a true one-touch centering operation, and to reduce misreads,the cameras 34 a,b can be instructed to return to their home position(aimed at the normal barcode position on a coil directly under thepicker 16) and initial state (zoom, iris level, starting focus) when apreset idle time is exceeded after each read operation. While theoperator moves to the next coil, the cameras can reset themselves forthe next one-touch operation whereby the two cameras move together to apreset orientation under the control of the pan/tilt unit 34 and theadjustable lens returns to its “home” zoom position etc.

A screen shot of an application program interface (API) 400 provided onthe touchscreen 54 is shown in FIGS. 14-18 for the two-cameraarrangement shown in FIG. 8. The API 400 provides a field view 401 fromone lens 34 a and tag view 403 from the other lens 34 b. The views 401,403 preferably use a tab organization such that an operator can easilyswitch to an enlarged tag view 403 by simply touching the tag view tab.The API 400 also comprises a status bar 402 for indicating the currentoperation being performed by the system 10. In FIG. 14, the status bar402 instructs the user to press on a tag in the field view (see FIG. 4)to begin the barcode read. Once the user presses the tag 60, thecentering and zoom operations are performed and an image of the tag 60is provided in the tag view 403 where a centering operation takes placeand the barcode is then read. Once the barcode 64 has been read, it willbe displayed on a barcode display 404. The laser rangefinders 13 a, 13 bcontinuously determine the (x, y) coordinates and correlate these to afloor location, which is shown in a location display 405.

The API 400 also comprises a reset option 406 that is used to reload thesoftware, a floor layout indicator 407 (showing “floor level” in FIG.14), an advanced option 408 for adjusting configuration settings, and ahelp option 409 that loads a graphical help manual (see FIG. 18).

The API 400 checks its communication ports to see whether a continuousstream of data is being received from the laser range finders 13 a, 13b. A stop watch algorithm is used whereby each time a new set of data isreceived, the starting time is reset and the time elapsed returns tozero and starts over. If the ports remain inactive for a period of time(e.g. 10 seconds), the API 400 will display a troubleshooting window 410giving an overview of the problem and possible causes and remedies asseen in FIG. 15. To attract the user's attention, the location displaymay change colour and the reset option 406 is highlighted to reflect anew set of commands when selected.

The troubleshooting window 410 first states the date, time and theproblem encountered. This information is appended to an external logfile for archiving. A sequential trouble shooting guide is then listed.Under normal operations (FIG. 14), the reset button instructs thecameras 34 a,b to resume their initial states and recalibrates themechanical movements of the pan/tilt mechanism 40. During an operationalerror such as that described above, the reset button 406 changes colourand pressing it reloads the API 400 instead of sending a command to thecameras 34 a,b and pan/tilt mechanism 40. The reload operation is toeliminate the possibility of a software glitch from the diagnostictests. For example, the reload may indicate that a software glitchinterrupted communications with the laser range finders 13 a, 13 brather than a physical connection being lost which can save unnecessarytroubleshooting.

The above-described polling progress is preferably continuous and thusonce the problem has been fixed, the troubleshooting window 410automatically disappears and the icons return to their original coloursand functions.

Similarly, if a touch command sent to the cameras 34 a,b via the cameradisplay 401 is broken, the field view icon turns red and thetroubleshooting window reappears (see FIG. 16) with relevanttroubleshooting tips. Preferably, the API 400 is capable of reflectingmore than one problem simultaneously. Active monitoring is preferablydone at the level closest to the control console 18, Since the pan/tiltunit 40 and motorized lenses 32 are directly connected to the tag viewcamera, it periodically polls for a response. The system will try tore-establish a connection once a response is not received, after aparticular threshold. The camera 34 passes a parameter to the API 400indicating the problem as noted above.

When the operator presses the help option 409 a help menu 412 as shownin FIG. 17 is displayed. The operator has the option of exiting the API400 by pressing option 413 to access the native PC desktop (preferablypassword protected). The API 400 can be reloaded by selecting the reloadoption 414, the help option can be exited by selecting option 416, and ahelp manual can be loaded by selecting the help option 415.

An example help manual 420 is shown in FIG. 18. Various tabs 421 areprovided for providing troubleshooting tips for particular operations. Agraphical display 422 and a textual display 423 are provided for eachtab to assist the operator in diagnosing the problem. An exit button 424is provided and contact information 425 for further support. Preferably,advance options are provide to enable an operator to configure thesystem 10 settings, such as the shutter speed, light intensity and zoomlevels for calibration purposes.

An example advanced help manual 320 is shown in FIG. 21. This menu 320allows the operator to perform manual zoom in 322 and zoom out 324operations as well as adjust the iris 328 or adjust the focus 330manually. The operator is also given the option to read the tag again326 and exit the manual 332 when finished with the advanced options. Itwill be appreciated that any number of advanced options can be providedand may be guarded by a password protection mechanism to preventunauthorized tampering.

Often, a shipping or storage facility includes more than one crane andthus includes more than one identical system 10 running the samesoftware in the same building. In order to differentiate between two ormore systems, an identifier for each system can be used, e.g. using ahardwired parallel port dongle. A different wiring combination can giveeach dongle a hard coded identifier. The dongles are physically attachedto the system's parallel port and its identifier is automaticallyretrieved during system login, which accurately recognizes each systemwithout human error. A lookup table can then be used to match the systemidentifier with the rest of the crane information such as weight, modeland make. The system identifier allows the equipment to be completelyportable so that it can be swapped between cranes during maintenanceperiods or if a machine is decommissioned When the system initiates itcan automatically determine the crane in which is has been installed andavoids the operator having to remember to update settings or enter suchsettings. It will be appreciated that the system identifier can also beset in software and, where only one crane exists in the same building,this option can be disabled.

As shown in FIG. 1, the system 10 interfaces with an inventory control24. The inventory control 24 and the camera system may be fullyintegrated into a single system or may operate independent of oneanother while interfacing with each other as shown. In one embodiment(not shown) the API 400 includes a window for the camera system and awindow for the inventory system but may also utilize a tabbed window toenable the operator to switch between the two interfaces. For a moreergonomic arrangement, a separate display (not shown) can be used todisplay an inventory interface on a separate display from the one shownin FIG. 3.

Separate interfaces may be considered if the camera control system andinventory control system require different levels of authority foraccess. If access to the inventory system is limited to an operator, aread-only display could be provided without write capabilities. Also,security issues may dictate whether or not the inventory system andcamera system can be integrated. In an integrated system, the camerasub-system sends location and barcode information that is alreadyobtained to the inventory sub-system for updating or cross-referencing.

In a fully integrated system, an incoming coil 22 enters the facility ona truck bed, and the driver submits a billing sheet with an ID for thecoil to an inventory control person or scans it into the system. The Dis loaded into the database and the inventory control 24 determineshistorical data and physical data to determine the best spot for thecoil 22. For example, the inventory control would have access to thefloor layout and the look-up table showing available locations. Thelocation and coil information may then be sent to the crane cab 18whereby the coil tag 60 is first scanned to confirm that the coilmatches the billing sheet and the coil 22 is lifted and placed at theappropriate location. With a sophisticated crane, a fully automatedplacement can be performed since the system 10 can find a location usingthe range finders 13 a, 13 b and can interface with the inventorycontrol 24 to match a vacant spot with a location. Ideally a proximitysensor or the camera 14 system can be used to confirm that a spot isvacant before the coil 22 is lowered.

Once the coil 22 is placed, API 400 notifies the inventory control 24which in turn updates its database to “fill” the vacant spot. For anoutgoing item, a lift ID can be entered into the system either in thecrane or from a remotely operated console (not shown). The lift ID isused to find the location for the coil 22 which in turn commands thecrane or notifies the operator in the cab of the location. The locationcan be used automatically or manually to locate the coil 22. The tag isthen read to confirm the inventory and the coil 22 is hoisted and placedon an outgoing truck.

The above example can be fully automated or partially automateddepending on the capabilities of the system and the safety requirements.An operator may be used but placed outside of the crane in an office. Byusing the illumination system 308, the facility would not requirelighting in a fully automate embodiment but only require the localizedlight that is only provided when a coil is being placed or retrieved.

Although the invention has been described with reference to certainspecific embodiments, various modifications thereof will be apparent tothose skilled in the art without departing from the spirit and scope ofthe invention as outlined in the claims appended hereto. The entiredisclosures of all references recited above are incorporated herein byreference.

1. A method for remotely scanning objects comprising the steps of: usingan imaging system to display an image of said objects on an interface;receiving a location input of an identification tag attached to adesired object based on a location in said image; using said locationinput to orient said imaging system towards said identification tag;magnifying said identification tag; analysing said image using an arrayof two-dimensional sensors to determine the deviation of said tag withinsaid image with respect to a preferred position; aligning said tag byadjusting said orientation; and reading information identifyingcharacteristics of said desired object provided by said tag.
 2. A methodaccording to claim 1 wherein said imaging system comprises a firstcamera, said first camera having a fixed magnification and a secondcamera, said second camera having an adjustable magnification forperforming said step of magnifying said identification tag.
 3. A methodaccording to claim 2 wherein said first camera maintains a fixedmagnification, such that said image includes a plurality of saidobjects; and said second camera includes a zoom lens that maintains afirst magnification that corresponds to a predetermined estimate of therequired magnification to focus said tag, and is operable between aplurality of magnifications to enable the magnification of said tag tobe adjusted.
 4. A method according to claim 1 wherein said imagingsystem includes a smart camera, said smart camera having an internalprocessor for executing said steps.
 5. A method according to claim 1wherein said location input is correlated to a field position determinedby a range finder system, said correlation being used to determine thelocation of said desired object in said field.
 6. A method according toclaim 1 comprising the step of illuminating the field of view of theimaging system.
 7. A method according to claim 1 wherein prior todisplaying said image, said method comprises the step of obtaining asystem identifier code.
 8. A method according to claim 8 wherein saidsystem identifier code is provided by a dongle connected to said imagingsystem.
 9. A method according to claim 1 further comprising the step ofsending said information to an inventory control system for monitoringthe distribution of said objects.
 10. A system for remotely scanningobjects comprising: an imaging system positioned remotely from saidobjects and arranged to image said objects, said imaging system havingan adjustable lens for magnifying said image; an interface fordisplaying an image of said objects and adapted for receiving a locationinput for an identification tag attached to a desired object based on alocation in said image; and a processor connected to said imaging systemand said interface; wherein said processor uses said location input toorient said imaging system towards said tag, commands said adjustablelens to magnify said tag, analyses said image using an array of twodimensional sensors to determine the deviation of said tag within saidimage with respect to a preferred position, aligns said tag by adjustingthe orientation of said imaging system, and reads informationidentifying characteristics of said desired object provided by said tag.11. A system according to claim 10 wherein said imaging system comprisesa first camera, said first camera having a fixed magnification; and asecond camera, said second camera comprising said adjustable lens formagnifying said tag.
 12. A system according to claim 10 wherein saidimaging system has an adjustment drive adapted for providing pan andtilt operations.
 13. A system according to claim 10 further comprisingan inventory control system connected to said processor, said inventorycontrol system being used to receive said information identifyingcharacteristics of said desired object from said processor, foridentification thereof; wherein said inventory control system updates arecord of said objects.
 14. A system according to claim 10 wherein saidimaging system includes a smart camera having an internal processor. 15.A system according to claim 10 further comprising a range finder systemfor determining the location of said desired object in said field and tocorrelate said location input to said location of said desired object insaid field.
 16. A system according to claim 10 further comprising anillumination system for illuminating the field of view of the imagingsystem.
 17. A system according to claim 16 wherein said illuminationsystem comprises a least one row of light emitting diode (LED) lights.18. A system according to claim 17 comprising two rows of said LEDlights and at least one row of infrared lights.
 19. A system accordingto claim 10 comprising a dongle connected to said imaging system havinga system identifier code.
 20. A method for aligning a tag in an image,said tag being affixed to an object and having indicia thereon, saidmethod comprising the steps of: obtaining an image of said object havingat least a portion of said tag visible in said image; arranging an arrayof two-dimensional sensors on said image; identifying markings in eachof said sensors, said at least one marking indicative of the presence ofa particular feature of said tag; computing an average position of saidmarkings to determine a deviation of said average position from apreferred position; and aligning said tag in said image according tosaid deviation.